﻿using System;
using System.Collections;
using Huirui.Cavan.Domain.Seedwork;

namespace Huirui.Cavan.Domain.MainBoundedContext.SystemModule
{
    #region RoleResource

    /// <summary>
    /// RoleResource object for NHibernate mapped table 'RoleResource'.
    /// </summary>
    [Serializable]
    public class RoleResource : Persistent
    {
        #region Member Variables

        protected bool _read;
        protected bool _write;
        protected bool _delete;
        protected bool _batchDelete;
        protected bool _export;
        protected bool _print;
        protected Resource _resource;
        protected Role _role;

        #endregion

        #region Constructors

        public RoleResource() { }

        public RoleResource(bool read, bool write, bool delete, bool batchDelete, bool export, bool print, Resource resource, Role role)
        {
            this._read = read;
            this._write = write;
            this._delete = delete;
            this._batchDelete = batchDelete;
            this._export = export;
            this._print = print;
            this._resource = resource;
            this._role = role;
        }

        #endregion

        #region Public Properties

        public virtual bool Read
        {
            get { return _read; }
            set { _read = value; }
        }

        public virtual bool Write
        {
            get { return _write; }
            set { _write = value; }
        }

        public virtual bool Delete
        {
            get { return _delete; }
            set { _delete = value; }
        }

        public virtual bool BatchDelete
        {
            get { return _batchDelete; }
            set { _batchDelete = value; }
        }

        public virtual bool Export
        {
            get { return _export; }
            set { _export = value; }
        }

        public virtual bool Print
        {
            get { return _print; }
            set { _print = value; }
        }

        public virtual Resource Resource
        {
            get { return _resource; }
            set { _resource = value; }
        }

        public virtual Role Role
        {
            get { return _role; }
            set { _role = value; }
        }



        #endregion
    }
    #endregion
}